Microsoft 64-bit operating systems can run both 32-bit MMC (MMC32) and 64-bit MMC (MMC64). MMC64 cannot run 32-bit snap-ins, and MMC32 cannot run 64-bit snap-ins. If the operating system is not specified when MMC is called, MMC32 or MMC64 will display depending on which operating system is running. This topic describes how to determine and control which version of MMC is executed in a Microsoft 64-bit operating system.
MMC can be executed with command line parameters, such as a console file name.
Additionally, the following command line switches are recognized by MMC.
If both of the preceding switches are specified on the command line, then the last switch is in effect.
Start-up considerations if /32 or /64 is in effect.
If MMC is started with no command line parameters, or if MMC is started with the /64 command-line option, it runs as the MMC64 application. If MMC is started with the /32 command-line option, MMC32 is opened, using the same parameters initially passed to MMC (except the /32 command-line option), and MMC64 will end.
Start-up considerations if a console file is specified.
If the MMC command line does not contain a /32 or /64 command-line option, but the command line does contain a console file name, then MMC64 examines the console file before determining which version to run. MMC uses the following algorithm.
- If all snap-ins referenced by the console file are available in 64-bit form, then MMC64 will run (the remaining algorithm steps are not executed). A snap-in is considered available in 64-bit form if it exists as an HKEY_CLASSES_ROOT\CLSID\snap-in clsid\InprocServer32 key in the registry, where snap-in clsid is the registered CLSID for the snap-in.
- If not all snap-ins referenced by the console file are available in 64-bit form but all of them are available in 32-bit form, then MMC64 starts MMC32. MMC32 runs using the console file as specified on the command line, and MMC64 terminates (the remaining algorithm steps are not executed). A snap-in is considered available in 32-bit form if it exists as a HKEY_CLASSES_ROOT\Wow6432Node\CLSID\snap-in clsid\InprocServer32 key in the registry, where snap-in clsid is the registered CLSID for the snap-in.
- If the number of unavailable 64-bit snap-ins is fewer than the number of the unavailable 32-bit snap-ins, then MMC64 runs (the remaining algorithm steps are not executed).
- If the number of unavailable 32-bit snap-ins is fewer than the number of the unavailable 64-bit snap-ins, then MMC64 starts MMC32 and MMC64 closes (the remaining algorithm step is not executed).
- If none of the previous steps yields a conclusion, then a user interface is presented to the user, prompting the user to specify which version of MMC to run (an option to cancel is also presented to the user).
If MMC64 fails to successfully start MMC32, MMC64 continues to run. After MMC32 has been successfully started by MMC64, then MMC64 closes. If an error occurs after MMC32 has successfully started, MMC64 is not notified, as it will have already been closed.